#include <iostream>

void Swap(int &a,int &b)
{
    int temp = a;
    a = b;
    b = temp;
}

void PrintInt(const int &a)
{
    //a++; 常引用不允许修改
    std::cout<<a<<std::endl;
}

int main()
{
    //引用：替代指针
    //引用是变量的别名
    //引用符号：&

    //1.引用的定义必须要初始化
    //2.引用一经确定，不可在修改朝向
    // int a = 10;
    // int b = 20;
    //Swap(a,b);
    // std::cout<<a<<" "<<b<<std::endl;
    
    //引用？本质：指针常量
    int a = 10;
    int &b = a; // int *const b = &a 
    //左值引用：只能取左值
    //int &c = 10;
    const int &c = 10;//常引用: const & : 可以取右值
    PrintInt(10);
    return 0;
}